Field
The disclosure relates to processing of image information and, more particularly, to the preparation and processing of image information to be outputted for display on a user display.
Background
Many techniques for generating images, including both those which run off-line on static scenes, and those on-line with dynamic scenes, can benefit from the use of techniques of occlusion culling using occlusion computations, to minimize the processing required to render a scene, and to otherwise minimize the time required to render a full scene image to a user at, or near, the time the scene is rendered to the user. Occlusion culling techniques are known to disable the rendering of objects or surfaces that are not visible to a viewpoint because they are obscured (occluded) by other objects or surfaces. For off-line techniques, this is typically done prior to a time that is at, or near, the time the scene is rendered to the user. By avoiding rendering the occluded objects, computational delays otherwise associated with such occlusion computations, are minimized or otherwise avoided. Occlusion culling can be seen as providing advantages to both off-line and on-line image generation techniques. However, since on-line techniques have inherent limitations associated with their live, on-the-fly, near-in-time to rendering the scene to a user characteristics, such as having to generate dynamic images with dynamic user positions and viewpoints, and where live rendering means there is a limited amount of time to perform related computations near-in-time to rendering the image to a user, such on-line systems are seen to particularly benefit by any improved occlusion culling technique that would reduce the amount of computations and otherwise promote a more quick, full a more realistic image rendering to an on-line user's display.
One set of examples of on-line image processing, are those of the on-line virtual reality (VR) systems, where on-the-fly, on-line rendering of images to a user's display are generated, where such images reflect a user's dynamic perspective based on dynamic user head movements, and where data associated with the image are transmitted between a client and a server, and where a significant number of computations are performed on a remote server near-in-time to the final image rendering at the user's client display. Such on-line VR systems are identified here as a form of on-line image processing that can benefit from any reduced processing otherwise typically present in such systems, and thus the introduction of any improved techniques potentially used therein, are identified here as being advantageous to such systems. Thus, for example, adding any new improved culling techniques to an on-line VR system that would reduce image processing calculations and otherwise provide image related data in a quicker and/or a more robust manner, would be seen as providing a user with a more enjoyable VR experience, and thereby seen as an improvement to current on-line VR system architectures.
On-line VR systems may include at least one host device and at least one client device that communicate over a network (e.g., a wireless network, wired network, etc.). For example, a Wi-Fi Direct (WFD) system includes multiple devices communicating over a Wi-Fi network. The server/host device acts as a wireless access point and sends image information, which may include audio video (AV) data, audio data, and/or video data, to one or more client devices participating in a particular peer-to-peer (P2P) group communication session using one or more wireless communication standards, e.g., IEEE 802.11. The image information may be played back at the client devices. More specifically, each of the one or more participating client devices processes the received image information from a server/host device for presentation on its client device display screen and audio equipment. In addition, the server/host device may perform at least some processing of the image information for presentation on the client devices.
The host device, and one or more of the client devices, may be either wireless devices or wired devices with wireless communication capabilities. In one example, as wired devices, one or more of the host device and the client devices may comprise televisions, monitors, projectors, set-top boxes, DVD or Blu-Ray Disc players, digital video recorders, laptop or desktop personal computers, video game consoles, VR headsets and the like, that include wireless communication capabilities. In another example, as wireless devices, one or more of the host device and the client devices may comprise mobile telephones, portable computers with wireless communication cards, personal digital assistants (PDAs), portable media players, or other flash memory devices with wireless communication capabilities, including so-called “smart” phones and “smart” pads or tablets, video game consoles, VR headsets, or other types of wireless communication devices (WCDs).
In some examples, at least one of the client devices may comprise a wearable display device. A wearable display device may comprise any type of wired or wireless display device that is worn on a user's body. As an example, the wearable display device may comprise a wireless head-worn display or wireless head-mounted display (WHMD) that is worn on a user's head in order to position one or more display screens in front of the user's eyes. The host device is typically responsible for performing at least some processing of the image information for display on the wearable display device. The wearable display device is typically responsible for preparing the image information for display at the wearable display device.